2,uniapp功能之 您所在的位置:网站首页 vue扫码登录 识别二维码 2,uniapp功能之

2,uniapp功能之

2023-06-01 10:12| 来源: 网络整理| 查看: 265

最近在搞uniapp的项目,所以最近的文章基本上是关于uniapp的。 分享一个自动生成二维码的网址,点击前往 注意 如果扫码和上一个nfc功能在同一个页面里面,会发生冲突,只有一个有用,一个没有用,所有,我给扫码的分装成了一个组件,这样就不会冲突了。 1,在component里面新建一个ScanCode.vue组件

扫描二维码获取 {{codes}} var main, receiver, filter; var _codeQueryTag = false; export default { name:"nfc", data() { return { codes:'',//code isKeshi:true,//提示字显影 nameStys:false,//动态样式 }; }, created(option) { this.initScan(); this.startScan(); }, onHide() { this.stopScan(); }, destroyed() { this.stopScan(); }, methods:{ initScan() { let _this = this; main = plus.android.runtimeMainActivity(); //获取activity let IntentFilter1 = plus.android.importClass('android.content.IntentFilter'); filter = new IntentFilter1(); filter.addAction("com.seuic.scan"); // 换你的广播动作 receiver = plus.android.implements('io.dcloud.feature.internal.reflect.BroadcastReceiver', { onReceive: function(context, intent) { plus.android.importClass(intent); let code = intent.getStringExtra("scannerdata"); // 换你的广播标签 _this.codes = code; _this.queryCode(code); //传值,去除换行字符 _this.$emit("setData",code.replace(/\n/g,"")); _this.isKeshi = false; } }); }, startScan() { main.registerReceiver(receiver, filter); }, stopScan() { main.unregisterReceiver(receiver); }, queryCode(code) { //防重复 if (_codeQueryTag) return false; _codeQueryTag = true; setTimeout(function() { _codeQueryTag = false; }, 150); let id = code }, // 点击扫码,或者直接用pda侧边的扫码按钮扫码都可以实现 ScanCode() { let main1 = plus.android.runtimeMainActivity(); //获取acitivity let Intent = plus.android.importClass("android.content.Intent"); let intent2 = new Intent("com.scan.onStartScan"); main1.sendBroadcast(intent2); }, }, } .Big{ width: 220px; } .nameSty{ height: 30px; width: 220px !important; line-height: 30px; font-size: 18px; font-weight: bold; color: #828282 !important; } /deep/.u-size-default,/deep/.uni-input-input{ font-size: 18px; }

2,在需要的页面引入

import scanCode from "../../components/saoma.vue"; export default { components: { scanCode }, methods: { // 接收扫码的值 getData(res){ console.log(res) }, } }

没了,结束了,是不是很简单呐,如有问题,欢迎留言。 最后:如果此篇博文对您有帮助,还请动动小手点点关注点点赞呐~,谢谢 ~ ~



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有